package com.cac.demo.newCode.compreQuery.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.cac.demo.newCode.compreQuery.dto.*;
import com.cac.demo.newCode.compreQuery.vo.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.HashMap;
import java.util.List;

@Mapper
public interface ComPackAoQueryMapper {
    //查询AO列表
    IPage<QueryAoListRespVO> queryAOList(IPage<?> page, @Param("dto") QueryAoRequestDTO queryAoRequestDTO);

    //查询配套清单列表
    List<QueryAoBillInfoVO> queryAoBillInfoList(@Param("dto") QueryAoBillInfoDTO queryAoBillInfoDTO);

    //查询物料清单列表
    List<QueryMatchInfoVO> queryMatchInfoList(@Param("dto") QueryMatchInfoDTO queryMatchInfoDTO);

    //查询工作包列表
    IPage<QueryPackageListVO> searchPackageList(IPage<?> page, @Param("dto") QueryPackageListDTO queryPackageListDTO);

    //根据工作包ID查询AO列表
    List<QueryPackageListVO> queryPackageAOList(@Param("dto") QueryPackageAOListDTO queryPackageAOListDTO);

    //根据AOid查询物料清单
    List<QueryPackageAoMatchVO> queryPackageAoMatch(@Param("dto") QueryPackageAoMatchDTO queryPackageAoMatchDTO);

    //根据AOid查询配套清单
    List<QueryPackageAoFaciVO> queryPackageAoFacili(@Param("dto") QueryPackageAoFaciDTO queryPackageAoFaciliDTO);

    /**
     * 查询总数
     * @return
     */
    List<ProgramManagCountVO> queryProgramManagCount();

    List<ProgramManagerVO> queryProgramManag14DaysList(@Param("programManageDTO") ProgramManageDTO programManageDTO);

    List<ProgramManagerVO> queryProgramManag30DaysList(@Param("programManageDTO") ProgramManageDTO programManageDTO);

}
